package cn.qidd.keep.domain.document;

import cn.qidd.keep.domain.core.dict.MemberStatus;
import cn.qidd.keep.domain.core.dict.PayChannel;
import cn.qidd.keep.domain.core.dict.PayType;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

import java.io.Serializable;
import java.util.Date;

@Data
@Document(collection = "member")
public class Member implements Serializable {

    @Id
    private String id;
    @ApiModelProperty("会员编号")
    private String memberNo;
    @ApiModelProperty("会员卡姓名")
    private String name;
    @ApiModelProperty("会员卡电话")
    private String mobile;
    @ApiModelProperty("会员卡使用产品ID")
    private String productId;
    @ApiModelProperty("会员卡使用产品名称")
    private String productName;
    @ApiModelProperty("会员卡使用产品内容")
    private String productContent;
    @ApiModelProperty("会员卡使用产品价格")
    private Double productPrice;
    @ApiModelProperty("会员卡使用备注")
    private String remark;
    @ApiModelProperty("会员支付价格")
    private Double price;
    @ApiModelProperty("支付渠道")
    private PayChannel payChannel;
    @ApiModelProperty("支付方式")
    private PayType payType;
    @ApiModelProperty("会员总共可使用次数")
    private Integer count;
    @ApiModelProperty("会员剩余可使用次数")
    private Integer leaveCount;
    @ApiModelProperty("会员最进一次使用时间")
    private Date lastTime;
    @ApiModelProperty("会员状态")
    private MemberStatus memberStatus;

    private Date operatorTime;
    private String operatorName;
    private String operatorRealName;

}
